The present invention concerns a method of putting a flow of packets of a network for transporting packets of variable length into conformity with a traffic contract. Such a method is used in such a network for controlling compliance with traffic contracts reached between the users and the network and thus providing these same users with a performance guarantee.
Such methods of putting packet traffic back into conformity are already known, but for networks for transporting packets of fixed length, such as the cells in the ATM (Asynchronous Transfer Mode) networks.
The specific characteristics of the ATM networks which have made it possible to solve the various problems related to the performance guarantee are as follows.
ATM networks transport cells which are of fixed length which makes it possible to predict the mutual impact of the communications established and therefore allows controllable multiplexing schemes to be put in place. The traffic contract which is negotiated at the time the communication is established defines at least two parameters which are respectively the minimum time between two cell transmissions T (which is the inverse of the peak rate also referred to as xe2x80x9cPeak Cell Ratexe2x80x9d or xe2x80x9cPCRxe2x80x9d) and the propagation time jitter tolerance xcfx84 (also referred to as xe2x80x9cCell Delay Variationxe2x80x9d or xe2x80x9cCDVxe2x80x9d) which can alter the intercell time. This tolerance xcfx84 covers the propagation time variations due to the multiplexing of cells. In more developed traffic contracts, it also accounts for the irregularities due to a source transmitting cells in unpredictable bursts.
ATM networks are generally provided with means for implementing a method of putting a flow of cells into conformity with the traffic contract mentioned previously as well as a method of reformatting the individual flows of cells restoring the original characteristics of the flow perturbed cumulatively by the jitter so as to put them back into conformity with the traffic contract or simply reduce the jitter in order to provide a better fluidity of the network.
For example, according to a known method of putting a flow of cells into conformity, the actual arrival time of a cell is compared with its Theoretical Arrival Time, hereinafter denoted TAT. If it is less than this theoretical arrival time by an amount greater than the jitter tolerance xcfx84, the cell is deemed to be too early and is then destroyed. Otherwise, it is transmitted and the theoretical arrival time for the next cell is updated by adding, either to the actual arrival time or to the theoretical arrival time, according to the greater of these two times, the minimum time between two cell transmissions.
It should also be noted that, according to this method, if a cell arrives earlier than its theoretical arrival time, it is the theoretical arrival time which is used for the updating. If it arrives later than its theoretical arrival time, it is its actual arrival time which is used for the updating. This implementation avoids the phenomenon of silence followed by a burst.
As for a known method of reformatting the individual flows of cells, this can be implemented in a spacing controller which no longer works on the arrival times of the cells, but on the retransmission times of the said cells.
The method described above, which establishes a virtual schedule of the theoretical arrival times of the cells and verifies at the time of the arrival of a cell that its theoretical arrival time conforms, is effective only because it is used in networks transporting packets which are of fixed length, such as the cells of ATM networks, with the result that the useful time consumed by the sending of each cell of any queue in the said network is fixed and can be determined.
However, this fixed size can prove highly constraining from the point of view of certain applications, and in particular applications which are low-speed but with a considerable real-time constraint, such as voice communication services. For example, this has led to specifying, in connection with and supplementary to the ATM standard, a superposed switching and multiplexing mode (AAL2) inserting, inside the cells of an ATM logical channel (xe2x80x9cvirtual channelxe2x80x9d or VC), xe2x80x9cmini-cellsxe2x80x9d of variable length limited to 48 (or 64) octets (generally to 48).
There is therefore a requirement for a method of putting a flow of packets into conformity with a traffic contract which is applicable to a network for transporting mini-cells and, more generally, packets of variable length. Such a method will provide a solution to the performance guarantee problem in such a network by allowing control of the traffic at the access and management of the flows.
The aim of the present invention is therefore to meet this requirement and propose a method of putting a flow of packets into conformity with a traffic contract which is applicable to a network for transporting packets of variable length.
To that end, a method of putting into conformity with a traffic contract according to the present invention consists, at each arrival of a packet, of comparing the time of this arrival with a theoretical arrival time and, if this arrival time is earlier than the said theoretical time by more than the jitter tolerance xcfx84 defined in the said traffic contract, destroying the said packet or not taking it into account, otherwise retransmitting the said packet and then determining the theoretical arrival time for the next packet. This method is characterised in that, in order to determine the said theoretical arrival time for the next packet, it consists of adding, on the one hand, a time ti related to the present packet i and which is a function ƒ of the theoretical arrival time TATi and of the actual arrival time xcex8i of the said packet i to, on the other hand, an interpacket time Ti which is a function g of the negotiated time per unit length T defined in the said traffic contract and of the length xcexi of the current packet i:
TATi+1=ti+Ti=ƒ(TATi, xcex8i)+g(T, xcexi)
Advantageously, the said interpacket time Ti is equal to the product of the negotiated time per unit length T and the length xcexi of the current packet i expressed in this same unit of length:
Ti=g(T, xcexi)=Txc2x7xcexi
As for the time related to the present packet ti, this is advantageously equal to the greater of the two times, the actual arrival time xcex8i of the current packet i, on the one hand, and the theoretical arrival time TATi of the current packet i, on the other hand:
xe2x80x83ti=ƒ(TATi, xcex8i)=max(TATi, xcex8i)
Advantageously, ti is equal to xcex8i for the first packet.
The present invention also concerns a method of putting a flow of packets of a network for transporting packets of variable length into conformity with a traffic contract, of the type which consists, at each arrival of a packet, of determining the theoretical arrival time of the present packet, of comparing the actual time of this arrival with the said theoretical arrival time and, if this arrival time is earlier than the said theoretical time by more than the jitter tolerance, destroying the said packet or not taking it into account, otherwise retransmitting the said packet. It consists, in this case, in order to determine the said theoretical arrival time for the present packet, of adding, on the one hand, a time tixe2x88x921 related to the previous conforming packet ixe2x88x921 and which is a function ƒ of the theoretical arrival time TATixe2x88x921 and of the actual arrival time xcex8ixe2x88x921 of the said packet ixe2x88x921 to, on the other hand, an interpacket time Ti which is a function g of the negotiated time per unit length T defined in the said traffic contract and of the length xcexi of the current packet i:
TATi=tixe2x88x921+Ti=ƒ(TATixe2x88x921, xcex8ixe2x88x921)+g(T, xcexi)
Advantageously, the said interpacket time Ti is equal to the product of the negotiated time per unit length T and the length xcexi of the current packet i expressed in this same unit:
Ti=g(T, xcexi)=Txc2x7xcexi
As for the time related to the previous conforming packet ixe2x88x921, this is advantageously equal to the greater of the two times: the actual arrival time xcex8ixe2x88x921 of the said previous packet and its theoretical arrival time TATixe2x88x921:
tixe2x88x921=ƒ(TATixe2x88x921, xcex8ixe2x88x921)=max(TATixe2x88x921, xcex8ixe2x88x921)
Advantageously, ti is equal to xcex8i for the first packet.
According to the two methods of the present invention described above, a packet which is deemed conforming is retransmitted at its actual arrival time xcex8i.
According to a variant of these two methods, a packet deemed conforming but arriving at a time xcex8i earlier than its theoretical arrival time TATi is retransmitted at the expiry of the theoretical arrival time related to the said packet, then denoted TRTi.